import request from '@/config/axios'

// 跨境电商数据映射配置 VO
export interface PlatformMappingVO {
  id: number // 映射编号
  platformId: number // 平台编号
  storeId: number // 店铺编号（为空表示平台级映射）
  mappingType: string // 映射类型
  localField: string // 本地字段
  platformField: string // 平台字段
  localValue: string // 本地值
  platformValue: string // 平台值
  dataType: string // 数据类型
  transformRule: string // 转换规则JSON
  isRequired: boolean // 是否必填
  defaultValue: string // 默认值
  validationRule: string // 验证规则
  sort: number // 排序
  status: number // 状态（0正常 1停用）
  remark: string // 备注
}

// 跨境电商数据映射配置 API
export const PlatformMappingApi = {
  // 查询跨境电商数据映射配置分页
  getPlatformMappingPage: async (params: any) => {
    return await request.get({ url: `/crossborder/platform-mapping/page`, params })
  },

  // 查询跨境电商数据映射配置详情
  getPlatformMapping: async (id: number) => {
    return await request.get({ url: `/crossborder/platform-mapping/get?id=` + id })
  },

  // 新增跨境电商数据映射配置
  createPlatformMapping: async (data: PlatformMappingVO) => {
    return await request.post({ url: `/crossborder/platform-mapping/create`, data })
  },

  // 修改跨境电商数据映射配置
  updatePlatformMapping: async (data: PlatformMappingVO) => {
    return await request.put({ url: `/crossborder/platform-mapping/update`, data })
  },

  // 删除跨境电商数据映射配置
  deletePlatformMapping: async (id: number) => {
    return await request.delete({ url: `/crossborder/platform-mapping/delete?id=` + id })
  },

  // 批量删除跨境电商数据映射配置
  deletePlatformMappingList: async (ids: number[]) => {
    return await request.delete({ url: `/crossborder/platform-mapping/delete-batch`, data: ids })
  },

  // 导出跨境电商数据映射配置 Excel
  exportPlatformMapping: async (params) => {
    return await request.download({ url: `/crossborder/platform-mapping/export-excel`, params })
  },
}
